import { ObjectDirective } from 'vue';
import { usePermission } from '@/hooks/usePermission';

/**
 * @el：获取绑定的dom
 * @binding.value：通过指令绑定之后传过来的参数
 */

export const permission: ObjectDirective = {
    mounted(el: HTMLButtonElement, binding) {
        if (binding.value == undefined) return;
        const code = binding.value;
        const { hasPermission } = usePermission();
        // 将获取到的值传到权限判断函数中，如果函数返回false，删除dom
        if (!hasPermission(code)) {
            el.remove();
        }
    },
};
